#[cfg(feature = "ssr")]
pub mod errors;
#[cfg(feature = "ssr")]
pub mod regex;
#[cfg(feature = "ssr")]
pub mod clickhouse;
#[cfg(feature = "ssr")]
pub mod mysql;
#[cfg(feature = "ssr")]
pub mod app_config;
#[cfg(feature = "ssr")]
mod dao;
#[cfg(feature = "ssr")]
mod data_access;
#[cfg(feature = "ssr")]
mod named_lock;
// #[cfg(feature = "ssr")]
// pub mod import_excel;
#[cfg(feature = "ssr")]
pub use errors::{Result,Error};
#[cfg(feature = "ssr")]
pub use dao::*;
#[cfg(feature = "ssr")]
pub use data_access::*;
#[cfg(feature = "ssr")]
pub use named_lock::*;

// #[cfg(feature = "ssr")]
// pub use import_excel::*;
#[cfg(feature = "ssr")]
pub use  data_access::DataAccessTrait;

pub fn get_config_path() -> String {
    let conf_path = std::env::var("SHQ_PAS_CONF_PATH").unwrap_or("./".to_string());
    conf_path
}

#[derive(
    Debug,
    Clone,
    Copy,
    PartialEq,
    Eq,
    PartialOrd,
    Ord,
    strum::EnumString,
    strum::Display,
    strum::EnumIter,
)]
pub enum SourceType {
    ODS,
    EDW,
    FTP,
    CAP,
    DLA,
    EDA,
}



